﻿using UnityEngine;
using UnityEngine.EventSystems;

namespace ZCTouchDrawBoard
{
    #region Delegate
    /// <summary>
    /// 图纸创建委托
    /// </summary>
    /// <param name="paper"></param>
    public delegate void CreatePaperCallback(GameObject paperGo);

    /// <summary>
    /// 图纸点击按下委托
    /// </summary>
    /// <param name="clickGo"></param>
    /// <param name="eventData"></param>
    public delegate void ClickDownPaperCallback(GameObject clickGo, PointerEventData eventData);

    /// <summary>
    /// 图纸点击弹起委托
    /// </summary>
    /// <param name="clickGo"></param>
    /// <param name="eventData"></param>
    public delegate void ClickUpPaperCallback(GameObject clickGo, PointerEventData eventData);

    /// <summary>
    /// 图纸点击委托
    /// </summary>
    /// <param name="clickGo"></param>
    /// <param name="eventData"></param>
    public delegate void ClickPaperCallback(GameObject clickGo, PointerEventData eventData);

    /// <summary>
    /// 图纸拖拽委托
    /// </summary>
    /// <param name="clickGo"></param>
    /// <param name="eventData"></param>
    /// <param name="editing"></param>
    public delegate void DragPaperCallback(GameObject dragGo, PointerEventData eventData, bool editing);

    /// <summary>
    /// 图纸编辑状态改变委托
    /// </summary>
    /// <param name="editing"></param>
    public delegate void EditPaperCallback(bool editing);

    /// <summary>
    /// 画笔大小改变委托
    /// </summary>
    /// <param name="value"></param>
    public delegate void PaintSizeChangeCallback(float value);
    #endregion
}
